/**
* Author:LSP
* Date:2020-12-18
*/
// @导入引用开发环境
if (typeof require === 'undefined') require = importModule
const { Base } = require("./lsp环境")

// @小组件配置
const widgetConfigs = {
    // 是否是iPhone12mini
    isIphone12Mini: false,
    selectPicBg: true, // 选择图片
    colorBgMode: false,  // 纯色背景模式
    bgColor: Color.black(), // 背景色

    imgArr: [
        "https://s3.ax1x.com/2020/12/18/rGxgN6.png",
        "https://s3.ax1x.com/2020/12/18/rJp1je.png",
        "https://s3.ax1x.com/2020/12/18/rJ9eKg.png",
    ],
    
    padding: {
        top: 0, // 上边距
        left: 0, // 左边距
        bottom: 0, // 底边距
        right: 0, // 右边距
    },

    refreshInterval: 10, // 刷新时间--估算(单位：分钟)
    // 预览模式：0：小尺寸，1：中等尺寸，2：大尺寸，负数：不预览
    previewMode: 0,
}

// @定义小组件
class Widget extends Base {
    constructor(scriptName) {
        super(scriptName)
        // 初始化其他变量
        this.setSelectPicBg(widgetConfigs.selectPicBg)
        this.setColorBgMode(widgetConfigs.colorBgMode, widgetConfigs.bgColor)
        this.paddingSetting(Object.assign(widgetConfigs.padding))
        this.refreshIntervalTime(widgetConfigs.refreshInterval)
        this.setPreViewSizeMode(widgetConfigs.previewMode)
    }

    /**
     * @渲染小组件
     */
    async render() {
        const widget = new ListWidget()

        const imgUrl = this.getRandowArrValue(widgetConfigs.imgArr)
        const img = await this.getImageByUrl(imgUrl)
        const imgStack = widget.addStack()
        imgStack.addImage(img)

        return widget
    }
}

// @运行测试
const { Running } = require("./lsp环境")
await Running(Widget, Script.name())